
Jedes Steuerelement des obigen Formulars gehört zu einer der folgenden Klassen:
dienen lediglich der Erläuterung des Formulars oder seiner Steuerelemente.
enthalten numerische oder alphanumerische Daten. Felder, deren Daten aus einer Access-Tabelle stammen, heissen gebunden. Die Datenherkunft eines ungebundenen Felds kann zum Beispiel eine Programmvariable oder -funktion in VBA sein.
Oft ist es für die Benutzerin einfacher, einen Menüwert zu wählen, statt ihn zeichenweise einzugeben. Wie Textfelder können auch Listenfelder gebunden oder ungebunden sein.
Ein Listenfeld benötigt je nach Zahl der Listenelemente viel Platz. Das obige Listenfeld Thema erstreckt sich zum Beispiel über die ganze Formularhöhe. Ein Kombinationsfeld wie Aufgabenquelle erfordert hingegen nur eine einzige Zeile. Sie wählen den gewünschten Wert, indem Sie auf den Pfeil und dann einen Wert des erscheinenden Menüs klicken.
Ein Unterformular ist ein Formular innerhalb eines Hauptformulars. FrmAllgemeines ist das Hauptformular, Unterfrm Fragenverwendung das Unterformular. Es heisst Fragenverwendung, weil es die Testtermine auflistet, welche die laufende Frage (Aufgabe) enthalten. Die laufende Aufgabe und die Klausurtermine stehen in einer 1:m-Beziehung. Das Hauptformular zeigt die Daten für genau 1 Aufgabe an, und der jeweilige Inhalt des Unterformulars zeigt die zugehörigen m Termine an (wobei m entweder 0 oder 1 oder mehrere Sätze aus einer Tabelle oder Abfrage bezeichnet).
Eine Befehlsschaltfläche (auch Schaltfläche oder engl. button) ist eine Rechtecksfläche mit einem Bild oder einem Titel. Die Schaltfläche mit dem Ausrufezeichen enthält zum Beispiel ein Bild (den Inhalt der Bitmapdatei Voreinstellung.btm) und die drei Schaltflächen links unten enthalten Text.
Eine Schaltfläche ist ein aktives Steuerelement, weil der Entwickler einem ihrer Ereignisse (meist einem Linksklick) ein Unterprogramm zuordnen muss. Das Beispiel QuadratDialog zeigt, wie Sie für das Klickereignis einer Schaltfläche ein Unterprogramm entwickeln können.
Mit den fünf Navigationsschaltflächen können Sie den aktuellen Datensatz eines Formulars ändern. Die Schaltfläche mit dem Stern (*) lässt Sie einen neuen Satz anfügen. Im Gegensatz zu den erwähnten Steuerelementen sind Navigationsschaltflächen systemdefiniert. Die Entwicklernin kann sie in MS Access nicht anpassen.
Das systemdefinierte Navigationsfeld nimmt die Nummer des Datensatzes auf, auf welchen Sie in einem Formular positionieren wollen.
Jede Klasse von Steuerelementen lässt sich durch Eigenschaften und Methoden beschreiben. Ein bestimmtes Steuerelement unterscheidet sich von anderen Elementen der gleichen Klasse durch unterschiedliche Eigenschafts- und Methodenausprägungen. Sie können die Eigenschaften jedes Steuerelements von FrmAllgemeines inspizieren und ändern, indem Sie es in der Entwurfsansicht (»Menüpunkt Ansicht/Entwurfsansicht) anklicken und dann mit »Alt/Enter die Eigenschaftenliste anzeigen. Das Hilfethema Ereignisprozeduren veranschaulicht am Beispiel des Listenfelds das Zusammenspiel von Steuerelement (Objekt), Eigenschaft und Ereignisprozedur (Methode).
Die Listenfelder Aufgabentyp und IstOLE bestimmen darüber, welches Formular die Schaltfläche Aufgabe bearbeiten öffnet. Je nach Wert der beiden Listenfelder erscheint eines der folgenden Formulare:
FrmZuordnung lässt Sie eine Zuordnungsaufgabe spezifizieren.
FrmMehrfachwahl lässt Sie eine eine Mehrfachwahlaufgabe definieren.
FrmOLEMcZuordnung lässt Sie eine Mehrfachwahl- oder Zuordnungsaufgabe unter MS Word entwerfen.
FrmEssay lässt Sie eine Essayaufgabe schreiben.
FrmOLEEssay lässt Sie eine Essayaufgabe unter MS Word eingeben.
Der folgende VBA-Code ist eine vereinfachte Version der Ereignisprozedur, die einen Klick auf die Schaltfläche 'Aufgabe bearbeiten' beantwortet:
'--- Öffnet je nach Aufgabentyp und IstOLE ein anderes Formular ' [IstOLE] ist der laufende Wert des Listenfelds IstOLE ' [Aufgabentyp] ist der laufende Wert des Listenfelds Aufgabentyp Private Sub BtnAufgabeBearbeiten_Click() If [IstOLE] = -1 And [Aufgabentyp] = 3 Then DoCmd.OpenForm "FrmOLEEssay" ElseIf [IstOLE] = -1 And [Aufgabentyp] <= 3 Then DoCmd.OpenForm "FrmOLEMcZuordnung" ElseIf [Aufgabentyp] = 1 Then DoCmd.OpenForm "FrmMehrfachwahl" ElseIf [Aufgabentyp] = 2 Then DoCmd.OpenForm "FrmZuordnung" ElseIf [Aufgabentyp] = 3 Then DoCmd.OpenForm "FrmEssay" End If End Sub